package com.jzo2o.common.enums;

import lombok.AllArgsConstructor;
import lombok.Getter;
/**
 * 启用状态枚举，定义对象的启用/禁用状态
 */
@AllArgsConstructor
@Getter
public enum EnableStatusEnum {
    /**
     * 未知状态
     */
    UNKNOWAL(-1,"未知"),
    /**
     * 启用状态
     */
    ENABLE(1,"启用"),
    /**
     * 禁用状态
     */
    DISABLE(0, "禁用");

    /**
     * 状态编码
     */
    private int status;
    /**
     * 状态描述
     */
    private String description;

    /**
     * 判断当前状态是否与指定状态编码相等
     * @param status 待比较的状态编码
     * @return 相等返回true，否则返回false
     */
    public boolean equals(Integer status) {
        return this.status == status;
    }

    /**
     * 判断当前状态是否与指定状态枚举相等
     * @param enableStatusEnum 待比较的状态枚举
     * @return 相等返回true，否则返回false
     */
    public boolean equals(EnableStatusEnum enableStatusEnum) {
        return enableStatusEnum != null && enableStatusEnum.status == this.getStatus();
    }
}
